package com.hdumooc.jdbc;

import java.sql.*;

/**
 * @description: DQL 操作示例
 * @author: Jieyao Lu
 * @date: 2023/11/18 15:44
**/
public class JDBCDemo02 {
    public static void main(String[] args) throws Exception {
        // 1.注册驱动(可以省略)
        Class.forName("com.mysql.cj.jdbc.Driver");
        // 2.获取连接(url, username, password)
        String url = "jdbc:mysql://localhost:3306/jdbc_lessons?characterEncoding=UTF-8";
        Connection connection = DriverManager.getConnection(url, "root", "root");
        // 3.获取SQL执行对象 Statement
        Statement statement = connection.createStatement();
        // 4.执行DQL操作 executeQuery
        String sql = "SELECT * FROM jdbc_user;";
        ResultSet resultSet = statement.executeQuery(sql);
        // 5.处理结果集
        // 判断是否有下一条数据
        // boolean next = resultSet.next();
        // if (next) {
        //     // 两种方式 获取 id
        //
        //     // 通过列名获取 id
        //     // int id = resultSet.getInt("id");
        //     // System.out.println("通过列名获取id：" + id);
        //
        //     // 通过列号获取 id
        //     int id = resultSet.getInt(1);
        //     System.out.println("通过列号获取id：" + id);
        // }

        while (resultSet.next()) {
            // 获取 id
            int id = resultSet.getInt("id");
            // 获取姓名
            String username = resultSet.getString("username");
            // 获取生日
            Date birthday = resultSet.getDate("birthday");

            System.out.println("id = " + id + ", username = " + username + ", birthday = " + birthday);
        }

        // 6.关闭流
        resultSet.close();
        statement.close();
        connection.close();
    }
}
